1. Field of the Invention
This invention relates generally to authentication of devices, and in particular, to authentication of integrated circuits.
2. Description of the Related Art
Establishing trust through authentication of individuals or devices is an important, but exceptionally difficult problem. There are a wide variety of scenarios where it is desirable to ensure that a system and its components are authentic and have not been tampered with in any way. The establishment of trust is a prerequisite for cryptographic and other secure systems, but is also important to ensure subsystems and their components are trustworthy and have not been tampered with in other critical applications—particularly those involving human safety. Secure tokens and other essential system components may be counterfeited, duplicated, or have PIN numbers, passwords, or other cryptographic key material extracted. Mobile environments exacerbate the problem since requirements for small size, low cost and low power consumption severely restrict the types of security mechanisms that mobile tokens can incorporate. Such tokens are frequently based on inexpensive, high-volume commercial micro-controllers in a smart-card or secure “key fob” form factor where implementation security may have been a relatively low design priority.
These small mobile devices with embedded integrated circuits (ICs) have gained widespread adoption in a variety of industries and are used in such diverse applications as: financial account access (credit cards, ATM cards, etc.), electronic funds storage/electronic wallets (public transportation payment cards), personal identification (government IDs, drivers licenses, passports), electronic identification (encrypted email, computer system or network access, cellular network access), building or secure area access control (building entry cards, multi-purpose IDs), etc.
For each of these applications, the device containing an IC is part of an overall authentication scheme. Generally, authentication schemes may be either single- or multi-factor, where some possible factors may include: “something the user knows,” “something the user has,” or “something the user is.” For example, security or identity tokens aim to improve the security of authentication by incorporating “something the user has,” with on-chip storage or through integration using other secure protocols in multi-factor schemes such as “something the user knows” (PIN number or password), or “something the user is” (biometric identification).
Although multi-factor authentication schemes provide additional security when properly employed, the way IC-based authentication tokens are typically used (“something the user has”) makes them a tempting target for fraudulent or other nefarious activity. Various techniques are known to exist that enable the cloning of the contents of an IC-based token or smart-card. For security applications or access controls, this presents a substantial problem since the cloned token can be used to gain fraudulent access to a system or resource such as payment accounts, computer systems, physical locations, etc.
Physical implementation attacks on secure electronics systems have evolved rapidly making it increasingly difficult for new countermeasures and security practices to keep pace. In contrast to mathematical cryptanalytic attacks which are typically hypothetical in nature, implementation attacks present a serious and immediate threat since the strength of the underlying algorithm and protocols is rendered largely irrelevant. Examples of implementation attacks range from complex techniques requiring expensive and highly specialized equipment (e.g. laser fault injection or focused ion beam manipulation) to surprisingly simple, low-cost attacks targeting the unintentional information leakage produce by devices during normal operation (e.g., simple power analysis).
Given that many implementation attacks are well within the reach of even modestly funded and minimally equipped individuals, they should be given serious practical consideration when designing modern systems. A prudent design approach is to 1) assume that secure tokens or other essential system components are subject to counterfeiting, cloning, or sensitive data extraction, and 2) take appropriate steps to mitigate the associated risks as part of an integrated, multi-tiered system security architecture.
What is needed, therefore, is a method for verifying the authenticity of secure devices to detect or block the use of counterfeit or cloned tokens.